package com.lmaos.basetools.control;

public class SControlExec {
	
	public SControlExec(SControlBean controlBean) {
		this.controlBean = controlBean;
	}
	public SControlExec() {
	}
	private SControlInterceptBean controlInterceptBean;
	private SControlBean controlBean;
	private volatile boolean exec = true;
	private SResult result = new SResult();
	private String resultName; // 选择输出的结果
	/**
	 * 说明：执行下一步操作		<br>
	 * 时间：2017年6月29日 下午2:18:01
	 *
	 */
	public void exec(){
		exec = true;
	}
	/**
	 * 说明：取消执行下一步操作		<br>
	 * 时间：2017年6月29日 下午2:18:10
	 *
	 */
	public void notexec(){
		exec = false;
	}
	/**
	 * 说明：是否可以执行下一步		<br>
	 * 时间：2017年6月29日 下午2:18:19
	 *
	 * @return
	 */
	public boolean isExec() {
		return exec;
	}
	public boolean isNotExec() {
		return !exec;
	}
	/**
	 * 说明：获取上一步执行结果		<br>
	 * 时间：2017年6月29日 下午2:18:31
	 *
	 * @return
	 */
	public SResult getResult() {
		return result;
	}
	public void setControlInterceptBean(SControlInterceptBean controlInterceptBean) {
		this.controlInterceptBean = controlInterceptBean;
	}
	/**
	 * 说明：获得拦截器bean		<br>
	 * 时间：2017年6月29日 下午2:16:32
	 *
	 * @return
	 */
	public SControlInterceptBean getControlInterceptBean() {
		return controlInterceptBean;
	}
	/**
	 * 说明：是否被拦截		<br>
	 * 时间：2017年6月29日 下午2:16:24
	 *
	 * @return
	 */
	public boolean isIntercept(){
		return controlInterceptBean!=null;
	}
	/**
	 * 说明：获得拦截器名称		<br>
	 * 时间：2017年6月29日 下午2:17:07
	 *
	 * @return
	 */
	public String getInterceptName(){
		if(isIntercept()){
			return controlInterceptBean.getControlInterceptName();
		}
		return null;
	}
	public void setControlBean(SControlBean controlBean) {
		this.controlBean = controlBean;
	}
	public SControlBean getControlBean() {
		return controlBean;
	}
	public String getResultName() {
		return isIntercept()?controlInterceptBean.getResultName():controlBean.getResultName();
	}
}
